home *** CD-ROM | disk | FTP | other *** search
/ CD World 1998 January / CD World - Ocak 1998.iso / misc / dbase55 / disk7 / extern.pak / DBGREP.PRG < prev    next >
Text File  |  1996-01-05  |  1KB  |  69 lines

  1. *******************************************************************************
  2. *  PROGRAM:      dbgrep.prg
  3. *
  4. *  WRITTEN BY:   Borland Samples Group.
  5. *
  6. *  DATE:         1/94
  7. *
  8. *  UPDATED:      5/95
  9. *
  10. *  REVISION:     $Revision:   2.4  $
  11. *
  12. *  VERSION:      Visual dBASE
  13. *
  14. *  DESCRIPTION:  Small example that uses dbfile.dll.  It implements
  15. *                a grep to search for a literal string in a file.
  16. *
  17. *  PARAMETERS:   String to search for, filename.
  18. *
  19. *  CALLS:        To dbfile.dll
  20. *
  21. *  USAGE:        do dbgrep with "string", "filename"
  22. *
  23. *******************************************************************************
  24.  
  25. parameters str, name
  26.  
  27. set talk off
  28.  
  29.  * Check parameters.
  30. tellusage = 1
  31.  
  32.  * Enough parameters?
  33. if pcount() = 2
  34.     * Of the right type?
  35.    if type( "str" ) = "C" .AND. type( "name" ) = "C"
  36.        tellusage = 0
  37.    endif
  38. endif
  39.  
  40. if tellusage = 1
  41.    ? "Usage: do dbgrep with 'string', 'filename'"
  42.    return
  43. endif
  44.  
  45.  * Check for valid file.
  46. if .not. file( name )
  47.    ? "No such file: " + name
  48.    return
  49. endif
  50.  
  51.  * Initialize dbfile.dll
  52. set procedure to dbfile additive
  53. do dbfile
  54.  
  55.  * Open up and set the filter to the string wanted.
  56. f = new textfile()
  57. f.filter( str )
  58. f.open( name )
  59.  
  60.  * Go till something happens.
  61. do while .not. (f.eof() .or. f.error())
  62. str = f.getline()
  63. ? str
  64. enddo
  65.  
  66.  * Close up.
  67. f.close()
  68. f.release()
  69.